1. Field of the Invention
The present invention pertains to the field of computer system architecture. More particularly, this invention relates to configuring input/output adapters in a computer system according to a plug and play compliant mode or according to an assigned resources mode.
2. Background
Standard bus architectures are commonly employed for coupling optional hardware input/output adapters into a computer system. Optional input/output adapters for such computer systems typically include peripheral devices such as disk drive interfaces, as well as network communication subsystems and graphics subsystems.
Such an input/output adapter typically contains a set of internal interface registers accessible by the central processing unit via the standard bus. Typically, the internal interface registers in each input/output adapter are mapped to separate portions of the standard bus input/output address space. Such a mapping of the internal interface registers to separate address spaces prevents bus conflicts among the input/output adapters.
In prior systems, a default input/output address mapping is commonly factory preset in each input/output adapter. Such a preselected input/output addresses mapping may be programmed in hardware in the input/output adapters or may be selected by switch settings or jumpers located on the input/output adapters. The default input/output address mapping for an input/output adapter may require modification as the input/output adapter is installed in a computer system in order to prevent input/output addressing conflicts with other input/output adapters already installed in the computer system.
In some prior computer systems, a "hit or miss" installation technique is often employed for selecting input/output addresses for newly installed input/output adapters. Such a hit or miss technique requires that an arbitrary input/output address be assigned to each input/output adapter at installation time. If a newly installed input/output adapter fails to function properly with the arbitrary input/output address selection, then another input/output address is usually arbitrarily selected. Such a hit or miss process repeats until the new input/output adapter functions properly. Unfortunately, such a hit or miss technique becomes cumbersome as the number of input/output adapters installed in the computer system increases.
Other prior computer systems provide automated mechanisms for configuring newly installed input/output adapters on the standard bus. For example, some prior computer systems that contain a standard bus conforming to the industry standard architecture (ISA) standard may implement a plug and play mechanism for automatically configuring input/output adapters on the ISA bus. The Plug and Play (PnP) ISA specification version 1.0a, Mar. 24, 1994, by Intel Corporation of Santa Clara, Calif., and Microsoft Corporation of Everett, Washington, defines a mechanism that provides automatic configuration capability for PnP ISA input/output adapters. The PnP ISA specification defines a hardware protocol for implementation on all PnP compliant input/output adapters as well as extensions to the basic input/output software (BIOS) and to the operating system of PnP compliant computer systems.
However, input/output adapters designed to conform to such a PnP mechanism are typically required to function properly in a computer system that is not PnP compliant. For example, a large number of personal computer systems that contain an ISA bus are not PnP compliant. Typically, such non PnP compliant computer systems lack the BIOS extensions and/or the operating system extensions required for PnP compliance. In such a non PnP compliant computer system, the end user must first install PnP configuration software. The installation of PnP configuration software is very technical and beyond the capability of most end users.